Customizable information management system

ABSTRACT

A method for managing information includes: forming a meta data structure containing first information; forming an application data structure containing second information; establishing an association between the meta data structure and the application data structure wherein the first information has the second information associated therewith using a server; and displaying the association on a display.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of co-pending U.S. patent applicationSer. No. 10/201,804 filed Jul. 23, 2002, which claims the benefit ofU.S. Provisional patent application Ser. No. 60/308,362 filed Jul. 26,2001, which is incorporated herein by reference thereto.

TECHNICAL FIELD

The present invention relates generally to information managementsystems, and more particularly to a system which can be quicklycustomized for user/clients in different industries.

BACKGROUND ART

In the past, information management system applications, such as recordmanagement systems, had to be built by the supplier on a custom basisfor the particular business or industry of the user/clients. Theuser/clients have specific requirements from a user interfaceperspective (UI) of the data that needs to be stored in the database,plus all the business rules behind each information field for inputtingdata. What happens is there is a core to the product that handles suchitems as bar codes, but nothing that actually is very specific to theuser interface or the fields or the data that is being stored.

When the user/client places an order for a system application, technicalpeople sit down with the user/client at an initial technical meeting anddesign a user interface, get user/client requirements, and then go backto the office and submit the information to the development group.

It could take probably a week from an investigation perspective to justget their requirements, i.e., just to get the initial design. Then, ithas to be submitted to a software development group and scheduled fordevelopment. That could take anywhere from six weeks to several monthsdepending on the work load of the development group, the complexity ofthe product, and how many projects the development group was doing atthe same time. When the project is finally scheduled and the time startsfor the implementation, the development group has to go back to thesoftware base code and customize it by redesigning the software based onthe requirements that were gathered. At that point the application iscompiled, so all of that work is being done within a developmentenvironment. However, anywhere between one to five people are requiredto work full time on a particular project. This process can, dependingon the complexity, take several weeks to complete for one user/client.

Once the product is compiled, then it has to be presented to theuser/client for acceptance. Approximately 90% of the time that initialdesign is refused because user/clients always change their minds. Theyalways have different requirements; they realize they forgot something;and/or something happened in their business process or workload thatchanges the initial requirements. Especially because there is such along time span between the initial technical meeting and delivery, oftentimes it comes back to the development group and has to be eitherrescheduled or sometimes rushed in. The developers must review the code.Again, it is back to the development stage, redesigning screens, addingnew fields, redesigning the database, etc. Finally, it is compiled againand sent to the user/client and hopefully it is approved.

Once it is approved, it is delivered to the user/client. Six months downthe line the user/client calls back and says, “We are changing ourprocess and we are adding two new fields to the application. How muchwould it cost us, and how long will it take?” Again, it is exactly thesame process. The same cycle is repeated because the development groupmust modify or redesign the user interface. The development group willneed to redesign the databases and redesign the business rules thatassociate all of the elements together. So it is back to square one. Thedevelopment group ends up starting from scratch, rebuilding theapplication, recompiling it, sending it to the user/client, andhopefully getting approval or acceptance the first time. Typically thatdoes not happen, so it is sent back, and so on. So from a maintenanceperspective and the perspective of the longevity of the product, bothfrom a user/client perspective and supplier perspective, thecustomization process is pretty horrific.

If there were 25 user/clients, then there would be 25 versions of theproduct. While the core might be the same, everything around the coremay be different. And as a matter of fact, even the core can be modifiedbased on requirements or required work-arounds. So if something isrequired and cannot be easily implemented by simply adding to theproduct, the core would be modified. So for 100 user/clients, there are100 versions of the product, and there is never a standard version ofthe product. From a maintainability perspective or improving theproduct, if there is a new feature that needs to be to added to theproduct, it would have to be customized for 100 different products, andeach would then have to be supported and maintained.

Further, if a software bug is found, each of the 100 different productsmust be individually analyzed by going to that particular code andlooking to see if the bug affected it because every code would bedifferent.

Even today, it is believed that almost all of the customizableapplication products are targeted toward developers. The developer mustbe highly skilled technically in order to build the user interface andto associate the fields to data storage. In addition, almost none ofthese applications has any business logic behind it. Some of them mayencapsulate some business logic into the fields, but there is norelationship between these fields.

Business logic includes, for example, data validation, date ranges, orrules about control dependency, which means controlling what can andcannot be entered on the screen. If a value is selected for a particularfield, then other fields will be disabled, for example. All of thecurrent applications are for UI designers or database designers.

For example, with Microsoft Access, it is possible for a non-technicalend user to build an application dragging and dropping fields onto aform and then building a database. It is necessary to be a technicaldeveloper to connect the two, because the link between the database andthe fields is not there. The links between the fields themselves on thescreen and in the database are done by a developer and not by an enduser.

In summary, in the past and in the current state of the art today, itcould easily take months and sometimes years from the time that a salesperson and/or a professional services technical support person obtainsthe requirements of a user/client to when a user/client is able toimplement a system.

A system which would be able to reduce the design time andimplementation time to a matter of days or weeks, and maybe months if itis a large company, has long been sought by but has eluded those skilledin the art.

DISCLOSURE OF THE INVENTION

The present invention provides a method for managing informationincluding: forming a meta data structure containing first information;forming an application data structure containing second information;establishing an association between the meta data structure and theapplication data structure wherein the first information has the secondinformation associated therewith using a server; and displaying theassociation on a display.

The present invention provides an application or a tool that allowsbuilding an application including its business rules, validation, andrelated sub-systems at one time from a user perspective with asimplified user interface and simplified terminology.

Some of the additional features are supported for several platforms, sothe present invention can target mobile applications such as cellularphones and through cellular phones to access the Internet. One of theways that the application can be built is for a cellular interface.

An engine generates the final user/client profile and that engine wouldbe modified to also write to that type of application.

These systems can add new, different types of fields that actually allowimprovement of the product and the addition of new features. The usercan select some of the ways that fields are represented to improve andsupport even more features. In addition, the engine can supportdifferent types of platforms in the future as opposed to only theplatforms that are currently supported today.

The above and additional advantages of the present invention will becomeapparent to those skilled in the art from a reading of the followingdetailed description when taken in conjunction with the accompanyingdrawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a system used with the method of thepresent invention;

FIG. 2 is an application as used in accordance with the presentinvention;

FIG. 3 is a flow chart of a customizable information management systemin accordance with the present invention; and

FIG. 4 is a simplified flow chart of a method of the present invention.

BEST MODE FOR CARRYING OUT THE INVENTION

Referring now to FIG. 1, therein is shown is a block diagram of acustomizable records and information management system 20 in accordancewith the present invention. The system 20 utilizes barcode technology toautomate business-critical activities by defining, managing, and quicklydelivering the information necessary to efficiently and effectivelymanage those activities. By transforming disorganized manualdocumentation into a defined and validated document collection process,the system delivers dramatic productivity improvements.

The system 20 transforms hard copy file systems to document imagingsolutions in easy, logical, affordable, proven steps without the risksassociated with manual indexing and undefined collection processes. Thesystem 20 can be fully tailored to meet the unique needs andrequirements of each user/client 22-24. This tailoring of eachapplication is accomplished through an on-board filing module. Thisfunctionality allows the applications to be quickly installed andconfigured by resellers and user/clients.

The system is a 32-bit, Windows-compliant application. It utilizes someof the latest technologies such as Active-X and COM. Both the MicrosoftDatabase Engine (MSDE) and the Microsoft SQL-Server database engine areusable as the database management technology for the present invention.This provides greater stability than Access and allows the presentinvention to easily migrate to SQL Servers when an application mustscale. The database side of the present invention uses Microsoft ActiveXData Objects (ADO) for database connectivity. The present invention willrun on Windows 95, Windows 98, Windows NT, and Windows 2000.

As an example, users/clients can create profiles 26 that are provided toa database server 28, which stores the profiles and data. An associateserver acts as an electronic document (Edocs) repository 30. Oneportion, WebView, is a browser based Internet application that allowsusers/clients to search, view and place requests for records. WebViewClient 32 provides lower overall deployment and distribution costs overtraditional client/server software models. WebView is serviced by an IISServer (WebView Server) 34, which maintains the COM Objects & profiles36.

Referring now to FIG. 2, therein is shown an Application 15 whichincludes a Folder Field 15A which is linked by identification to aFolder 15B. The Folder 15B is provided with information through aconventional bar code reader from a Bar Code 15C.

Referring now to FIG. 3, therein is shown a block diagram of a Profiler9B portion of the system in accordance with the present invention.

The Profiler 9B utilizes different types of structures. There are twomain types of structures: Meta Data A, or Master List Structures 1-4,and Application Data B, or Run-time Structures 5-8. The structuresdetermine the features of the Profiler 9B and what the Profiler 9B cangenerate.

The Master List Structures 1-4 are fairly static and not typicallychanged by the end user/client 9A or by whoever is configuring orsetting up the application. The Master List Structures 1-4 drive whatthe Profiler 9B does, what it presents to the user/client 9A from a userinterface, and what it generates as upon a profile. The Run-timeStructures 5-8 are the ones that maintain and store what the usercreates as an application, and they end up being the driver for latermodifications to the product on the user end. Also they end up being thedriver to the engine that essentially generates the profile as anapplication.

There are basically four master structures. They are Field Type 1,Property Type 2, Property 3, and Field Type Property 4.

The Field Type 1 is a list of field types provided by the Profiler 9Band available to users when creating application definitions. So whenthey are looking at the application, at the Profiler 9B, and they wouldlike to add a field, the Field Type 1 defines that there area textfield, a date field, and a mask edit field. So these are the types offields that a user is presented with.

The Property Type 2 is a list of properties for each field. And eachproperty that is defined within has a type. There are currently threemain types in the Profiler 9B but additional different types arepossible. But the three of them are generic which means this particularproperty is a free form text. The user can enter a value there, forexample a help prompt. Boolean logic allows a true-false type of logicwhere typically from a UI perspective is represented by a check box inthe Microsoft Windows environment. A list Property Type 2 is somethingthat allows selection of a list of values or entry of a new value. Forexample, a mask character, which is one of the properties that is in theProfiler 9B, can provide one of the following either as an underscore ora pound as one of the mask characters, or a custom character if it isdesired to override these.

The Property 3 is a master list of field properties available in theProfiler 9B. So mask character is one of the properties. ValidProperties are size, input, mask, mask character, default value, tooltip, etc. For example, when the cursor over the field, the propertiesindicate whether the field can be queried, whether everything entered init should be converted to upper case, whether it is a required fieldwithin a record, etc. Therefore, the Property 3 is the master list ofall of the properties available within the Profiler 9B.

The Field Type Property 4 is when a particular type of field is selectedwithin the Profiler 9B; there are certain properties within the masterlist of properties that are assigned to that particular field. This iswhere an association is made between them. So it is the associationbetween Field Type 1 and Property 3.

Basically, the four structures define what the Profiler 9B presents tothe user so it is important to know that the Profiler 9B is also dynamicin itself. Merely by coming in and modifying, adding for example a newproperty or modifying the type of a property or adding a new type,actually customizes how the Profiler 9B works and essentially what itgenerates also because it is all driven through these four master tablesor structures.

Run-time Structures 5-8 are the ones that get modified by theuser/client 9A behind the scenes. Obviously, the Profiler 9B customizeson behalf of the user/client 9A based on their actions, so when auser/client 9A adds a field, it is added to a Field Definition structure5. The Field Definition structure 5 is really a master list of alluser-defined fields that are created by the user. It is a structure thatcontains the user defined fields, their names, and their type. The typeis basically derived from the Field Type master list 1, label captions,the position within the tabbing sequence, screen positioning, if it is aLookup field 8 what is the Lookup category, etc. And then the generatorengine, a component of the Profiler 9B, uses this structure along withthe Field Property structure 6, which will hereinafter be described,next to build a final applications package, basically the finaldeliverable to that user.

The Field Property Structure 6 defines the relationship between auser-defined field and its properties. So when a particular type offield is selected and dropped on the screen, the Field PropertyStructure 6 is created also for that field so that when values areassigned to each Property 3, this is where they get stored. So a mathcharacter for a particular type of field would be stored in the FieldProperty Structure 6.

The Folder Field Table 7 is actually not part of the Profiler 9B itself.It is used by the application and this is where the Folder information15B (shown in FIG. 2) is stored. It is one of the tables that storesFolder information 15B. This particular table actually is the table thatpresents or stores all the user-defined fields. It is modified by theProfiler 9B. So, based on the profile that is generated, not only doesit generate a user interface, but it also modifies the structure of theFolder Field Table 7 and provides the proper data types, the sizes, andeverything for these fields within the database based on what the userselected. Just to clarify, the Folder Field Table 7 may contain fieldswith a suffix, underscore, or number. When a field is deleted in theProfiler 9B, it is removed from the screen but its definition is notremoved. Its definition is stored as inactive. And then within thatFolder Field Table 7, it is renamed so that it does not appear in theapplication. This allows user/client support people to undeleteunintentionally deleted fields. Because basically there is data in thatfield and if it is deleted and the end user says, “Oops, I made amistake” it is normally gone. It is necessary to intentionally run acleanup utility and saying, “Yes” before any fields are actuallydeleted. The clean-up utility presents a list of fields that will bedeleted and requires an affirmative “Yes” that these are the fields tobe deleted, and a command saying “clean up” is required before it cleansup.

The Lookup Table 8 is also a run-time program. It is not really part ofthe Profiler 9B but the Profiler 9B affects this table in the sense thatwhen a field is defined as a category, it has a Lookup category, whichmeans that it is a Lookup field. Lookup fields are typically drop downmenus. They present the end user with a list of values and one of thevalues selected in this list will be the content. For example, a list oflocations such as abbreviations for states of the U.S.A. is really aLookup field because it should not be necessary for the user to enterthe full name of the location. The user may re-enter it ten times withdifferent spellings. So there is a dropdown with each location name andthen the user can select one. Customized Lookups can be created withinthe Profiler 9B. A category name is assigned. For example, “State” isone category for this particular field. Another one would be locationnames. And then by defining these categories, it is possible to go intothe Lookup maintenance in the application, based on these customizedcategories to enter values for each one of these categories. Atrun-time, the Profiler 9B generates the final package. That package hascode and logic in it to go and retrieve the values or the list of valuesfor a particular location or a bit of a category.

When the user opens the Profiler 9B, initially it is empty. When thesystem is first received, the user/client 9A can actually install thesystem on their own and start the Profiler 9B. An empty screen initiallywill be seen. Then the user can drop fields onto the form, move themaround, resize them, give them properties, and then save the profile.What the Profiler 9B does in the end is basically store all of its datainto Run-time Structures 5-8, but in addition to that, it also storesthe user/client profile. The profile is a form or a syntax that isstored internally within the database that essentially becomes thepackage that is used by the user interface or by the application topresent the fields.

Not only does the Profiler 9B generate the screen itself, but also thelogic behind it. So within the Profiler 9B there is stored the ProfilerVB Script and Java Script code 9C that gets inserted based on the fieldsthat are selected and based on the relationships between these fields.So validation, making sure that certain fields are enabled and disabledat different times, based on the values that are selected, occursautomatically and the Profiler 9B automatically adapts to thatsituation.

The Profiler 9B generates a WebProfile 10 and an application profile,AppProfile 11. These profiles contain the field definitions and theirbusiness rules, as required by the targeted platforms. If a web productis enabled within the Profiler 9B, because the Profiler 9B is also acustomization tool to enable/disable packages or modules within theproduct, WebView is enabled. In addition to creating the typicalprofile, the AppProfile 11, that is used within a Desktop Application13, the Profiler 9B also builds the WebProfile 10. It provides what thescreen will look like and what the functionality and business rulesbehind every field and every screen that will be utilized by either theWebView or the Desktop Application 13. Essentially, the Web Application12 and the Desktop Application 13 utilize the application data in MetaData A also in conjunction with a profile to make sure that theapplication is rendered correctly and the business rules areimplemented.

When the Profiler 9B starts, it goes through the list of properties andfields that it has available to it, and it presents them in a userinterface, for example a text field, a check box, or a date field. Thesetypes of fields are defined in the master list tables or structures andthey are utilized by the Profiler 9B to present a dropdown that says,“Which field would you like to add?”

In the Profiler 9B there is a control called the Dynamic HTML editor.When a type of field is selected for addition, based on the mastertables, default locations are defined for where the field will bedropped onto the form. For example, it could be dropped at the rightbottom part of the screen. So Field Type 1, for example, in addition tohaving the identification encoded in, also defines the user interface,how the user interface represents each field type. So there is atemplate code that is stored in the master table Field Type 1 thatdefines what needs to be done or added to that control, for example, thedynamic HTML edit control, when a text field is dropped. The tables alsodefine what the field looks like.

In addition, code is built into the Profiler 9B that is added orappended to that definition to make sure that there is a link from anevent handling purpose and also for validation when properties aredefined in that field. Then a save is performed. That control, inaddition to being added on that form, is essentially the definition thatis built and stored in the database, It is based on that particularposition on the form where it has been dragged and dropped, or the formresized, and also based on what is in the Profiler 9B itself in terms ofVB Script or Java Script code 9C.

What also happens, besides the ability to just drag-and-drop the fieldonto the form, is that for each field type that is dropped on the form,the Profiler 9B says, “OK, I just dropped a text field”. The associationbetween Field Type 1 and Property Type 2, Property 3 and Field TypeProperty 4, which are the master lists themselves, is determined. Ifthere is a text field, what properties are required to prompt or allowthe user to enter are determined. For example, with a date field, itdoes not make sense to prompt for the mask character or the length ofthe field. It is two digits for the month, two digits for the day, andthen four digits for the year. There is no way around doing that. Itdoes not make sense to provide, for example, the masking ability toenter a phone number in a date field. So, the Profiler 9B knows bylooking at these master tables that it needs to present these lists ofproperties to the user so he/she can modify and set particularproperties for that particular field.

Certain types of fields may be queriable while other types of fields maynot be. Being queriable is a function within the product. When the enduser says, “I would like to query on something”, a value is placedwithin that field and then entered. Does it participate in the queryprocessing? That is something that is defined in the Profiler 9B basedon its type. There are two types of Lookups, coded Lookups and a simpleLookup. For example, states could be CA for California, or there may bejust a list of user names, no code. Those are called simple Lookups.Based on the type of Lookup that being added to the form there aredifferent properties that are assigned. So this is what the Profiler 9Bdoes. It looks at the master tables and it says, “OK. Here are theproperties that I need to present the user with”. When the user selectsthe properties, everything is stored in memory in a structure so thatlater on the data gets saved primarily to the Field Definition Table 5,which is one of the Run-time Structures 5-8 that the Profiler 9Butilizes. It is used to implement or save the final dynamic profiledefinitions including the business rules and logic (code) 9C.

The Profiler 9B is really the heart of the application. It does not workby itself. It just generates a profile that essentially is used byanother application or several applications. For example, when it isutilized by several applications, one of which is the DesktopApplication 13, it reads the Meta Data A, which are the master listtables and the run-time tables to present the user with a user interface(UI), the business rules, and everything else. So it is based on whatthe Profiler 9B generates, that the application actually works. Withoutthe Profiler 9B, the application does not work. It is an emptyapplication.

The Web Application 12 is exactly the same. The Profiler 9B is requiredso that the application can know what it needs to represent to the userand what business rules to implement from a desktop and WebViewperspective.

Also from a batch perspective, batch Import processing is implemented.Batch Import 14 is another way to do user data entry, but in batch mode.So whatever is implemented in the user interface from a validation andbusiness rule processing should be implemented in the batch process.What is done in the user interface is that all of these rules areimplemented by the Profiler 9B and they are pretty much controlled bythe profile that is generated from the Profiler 9B, so everything isdynamic and these rules are built as the application is built. TheImport 14 takes that same information, the Meta Data A, master list andthe run-time tables in addition to an Import Meta Data Table 14A,additional table, and implements business rule validation and arelationship between fields and everything else requires dependencybetween different types of fields in batch mode so that several thousandrecords can be imported at a time. The Import tool is a completelydifferent tool from the rest of the Import applications that are outthere on the market in that it actually implements dynamic rules andimplements business rules in batch mode and with good performance.

The Web View Application 12 and the Desktop Application 13,respectively, are essentially empty applications until they load theprofile from the database where it has been stored. These applications,particularly the Desktop Application 13, use Bar Codes 15C as a majorcomponent in order to drive the tracking and transferring of records.

Summarizing, the Profiler 9B generates a profile, which is a userinterface definition plus a data storage definition. That data storagedefinition is only half the formula of storing a record within thesystem. The other half is what is defined by file and queue. So thereare two parts to a record. A record is defined by the user using theProfiler 9B, which describes which fields and the association betweenthese fields. And then there is the other part of a record, whichmaintains the ability to transfer records from one location to another,to do auditing, and to do all kinds of other things. And those fields,or those properties of a record, are defined within the Folderstructure. The Folder structure 15B is basically the other half of theFolder Field structure 15A, which is modified by the Profiler 9B. ThatFolder structure 15B defines a Bar Code 15C and basically is anidentifier of a record. It is a unique value that can be printed using aBar Code font, can be scanned using a Bar Code reader, and essentiallyusing the Bar Code 15C allows a record to be transferred from onelocation to another, or to be retrieved and viewed on the screen using aprofiled application.

So essentially the application is generally empty. The part that is theuser interface is empty when the application is initially purchased andno profile has been created. The Bar Code 15C exists, but it meansnothing because it is just a unique ID. Once the profile is generatedand saved into the database, the user interface definition is also savedand that defines what is represented to the user from a dataperspective. But again behind the scenes is this other piece of datathat stores the current location, stores the Bar Code, stores many otherthings about that particular record. And that is how the applicationutilizes the profile in conjunction with the Bar Codes 15C.

In addition, scripting ability exists within the Profiler 9B itself sowhen there are users who are capable of writing code in addition tousing this user interface, they have the option to go to an advancedmode and enter code that associates data with a particular field. Sovalidation is not only done by the Profiler 9B based on its rules, butis also implemented as a custom solution that the user can later on goin and modify at run-time again. This is not at compile time, so it canbe done between a user/client 9A for example and an integrator orconsulting services.

In addition, adding more generator engines enable different destinationor target platforms to be supported, such as personal digital assistantswhich, generally speaking, are considered wireless applications. TheProfiler 9B can also generate a Microsoft Outlook view, like a dashboardview, or can generate other types of applications. Because the Profiler9B really is just a way to combine user interface and business rulestogether based on a user defined drag-and-drop methodology. But the endresult of the Profiler 9B does not have to be a browser or the DesktopApplication. It can be any other application. It can be self-containedwithin the Profiler 9B itself.

So the Profiler 9B is able to target several platforms, in addition toadding new features such as customization by the user to add more code,to add more logic.

Referring now to FIG. 4, therein is shown a simplified flow chart of amethod 40 of the present invention. The method 40 includes: forming ameta data structure containing first information in a block 42; formingan application data structure containing second information in a block44; establishing an association between the meta data structure and theapplication data structure wherein the first information has the secondinformation associated therewith using a server in a block 46; anddisplaying the association on a display in a block 48.

While the invention has been described in conjunction with a specificbest mode, it is to be understood that many alternatives, modifications,and variations will be apparent to those skilled in the art in light ofthe aforegoing description. Accordingly, it is intended to embrace allsuch alternatives, modifications, and variations which fall within thespirit and scope of the included claims. All matters hither-to-fore setforth herein or shown in the accompanying drawings are to be interpretedin an illustrative and non-limiting sense.

The invention claimed is:
 1. A method of operation of an informationmanagement system that includes one or more computers that executeinstructions to perform actions, comprising: instantiating a systemapplication to perform actions, including:forminggenerating a meta datastructure containing first information; forminggenerating an applicationdata structure containing second information for maintaining provideduser application information; establishing an association between themeta data structure and the application data structure wherein the firstinformation has the second information associated therewith using aserver, and wherein the first information is employed by a profilerapplication to enable static actions and the second information isemployed by the profiler application to enable user modifiable actions;employing one or more of a physical bar code reader to scan a bar codeor other readers to uniquely identify a record comprised of data definedby the first information and the second information that is configuredwith the use of the profiler application to display the record to a useror transfer the record from a disposition to another disposition; anddisplaying the association on a display.
 2. The method as claimed inclaim 1 wherein: forming the meta data structure includes forming masterlist structures having: a field type structure; a property typestructure; a property structure; and a field type property structure. 3.The method as claimed in claim 1 wherein: forming the application datastructure includes forming run-time structures having: a fielddefinition structure; and a field property structure.
 4. The method asclaimed in claim 1 additionally comprising: forming tables including: afolder field table; and a lookup table.
 5. The method as claimed inclaim 1 additionally comprising: reading the meta data structure by anapplication; reading the application data structure by the application;and adding customization information to form a the profile.
 6. Themethod as claimed in claim 1 additionally comprising: reading the metadata structure by an application; reading the application data structureby the application; adding customization information to form a theprofile; and entering user information using the profile to form afolder.
 7. The method as claimed in claim 1 additionally comprising:reading the meta data structure by an application; reading theapplication data structure by the application; adding customizationinformation to form a the profile; and entering user information usingthe profile to form folders in a batch mode.
 8. The method as claimed inclaim 1 additionally comprising: reading the meta data structure by anapplication including a web application and a desktop application. 9.The method as claimed in claim 1 additionally comprising: validatingassociations of the meta data structure and the application datastructure.
 10. The method as claimed in claim 1 additionally comprising:adding a generator engine for targeting a hardware platform.
 11. Amethod of operation of an information management system that includesone or more computers that execute instructions to perform actions,comprising: instantiating a system application to perform actions,including:forminggenerating a meta data structure containing firstinformation for: providing a user interface,; determining features forof the user interface, and; determining the contents of a profile;forminggenerating an application data structure containing secondinformation for: maintaining provided user application information,;storing user application information,; and driving an engine to generatethe profile as an application; establishing associations an associationbetween the meta data structure and the application data structurewherein the first information has the second information associatedtherewith to form a profiler using a server, and wherein the firstinformation is employed by the profiler application to enable staticactions and the second information is employed by the profilerapplication to enable user modifiable actions; and employing one or moreof a physical bar code reader to scan a bar code or other readers touniquely identify a record comprised of data defined by the firstinformation and the second information that is configured with the useof the profiler application to display the record to a user or transferthe record from a disposition to another disposition; and displaying theprofiler on a display.
 12. The method as claimed in claim 11 wherein:forming the meta data structure includes forming master list structureshaving: a field type structure having: a list of field types availableto a user, a text field, a date field, and a mask edit field; a propertytype structure having: a list of properties for a field, a list ofvalues for a field, Boolean logic, and a new value entry; a propertystructure having: valid properties and a master list of all propertiesavailable in the profiler; and a field type property structure having:associations between the field type structure and the propertystructure.
 13. The method as claimed in claim 11 wherein: forming theapplication data structure includes forming run-time structures having:a field definition structure having: a master list of all user-definedfields created by a user, a field name, and a field type; and a fieldproperty structure having: relationships between a user-defined fieldand a property of the user-defined field and values of the property. 14.The method as claimed in claim 11 additionally comprising: formingtables including: a folder field table for: storing a folder record,storing a user-defined field, generating a user interface, providesproper data types and sizes for a folder, and permitting undeleting ofan unintentionally deleted field; and a lookup table for: providing adrop down menu.
 15. The method as claimed in claim 11 additionallycomprising: reading the meta data structure by an the application;reading the application data structure by the application; and addingcustomization information to form a the profile.
 16. The method asclaimed in claim 11 additionally comprising: reading the meta datastructure by an the application; reading the application data structureby the application; adding customization information to form a theprofile; and entering user information using the profile to form afolder.
 17. The method as claimed in claim 11 additionally comprising:reading the meta data structure by an the application; reading theapplication data structure by the application; adding customizationinformation to form a the profile; and entering user information using amode selected from a group consisting of an individual mode, a batchmode, a bar code mode, and a combination thereof.
 18. The method asclaimed in claim 11 additionally comprising: reading the meta datastructure by an the application including a web application and adesktop application; storing a web profile for the web application; andstoring an application profile for the desktop application.
 19. Themethod as claimed in claim 11 additionally comprising: validatingassociations of the meta data structure and the application datastructure using dynamic HTML or another syntax appropriate for othertargeted platforms.
 20. The method as claimed in claim 11 additionallycomprising: adding a generator engine for targeting a wired or wirelessplatform.